javac : invalid target release: 1. 8
全部标签 这个问题不太可能帮助任何future的访客;它仅与一个小地理区域、一个特定时刻或一个非常狭窄的情况相关,而这些情况通常不适用于互联网的全局受众。如需帮助使这个问题更广泛地适用,visitthehelpcenter.关闭9年前。我一直在研究如何从命令行编译和运行Java程序,并且不断看到设置类路径的不同版本:-cp对比-classpath.我想认为这些是相同的,但是比我更有知识的人可以证实或反驳这一点吗? 最佳答案 您可以通过查看官方文档轻松找到答案。来自Windows或Unix版本:Thejavacommandhasa-cpopti
当我编译一个依赖于我之前编译过的其他模块的模块时,我必须指定--module-path选项。这使得我依赖的模块可见。但同时我也想让一些非模块化的Jar文件可见。但是,如果不使它们成为自动模块,只需指定--class-pathsome.jar就在--module-path旁边,然后javac似乎忽略了claspath并抛出“未找到包yyy”和其他“未找到”错误。我可以理解使用--class-path和--module-path同时(编译)时间是非法的,但javac不会以任何方式警告我。 最佳答案 您可以并行使用类路径和模块路径,但有一
在通过Ant运行javac时,是否有任何清楚解释且简单的方法可以查看编译器输出?任务?这是我的javacAnt标签:这是我收到的唯一错误消息:/path/to/build.xml:42:Compilefailed;seethecompilererroroutputfordetails.问题是我不知道如何查看编译器错误输出了解详情...一些可能有帮助的配置元素:Ant1.6.5Windows7x64Java1.6.0_20x32通过Eclipse启动目标我知道关于SO有一些相关的已回答问题,但没有一个人真正回答了这个简单的问题:https://stackoverflow.com/a/12
javac的-g:vars(局部变量调试信息)选项究竟提供了什么输出。做一些测试,没有附加信息(例如-g:source,lines和-g:source,lines,vars没有区别。有人有这些局部变量调试信息的例子吗? 最佳答案 -g:vars选项会将LocalVariableTable插入到您的类文件中。例如,使用这个测试类:publicclassTest{publicstaticvoidmain(String[]args){intmylocal=1;System.out.println(""+mylocal);}}可以通过jav
我刚刚从以前的JDK1.8.0_33下载了JDK1.8.0_51,因为我遇到了问题。有一些解决方法可以将Jdk8与Android一起使用,我只是想知道Google是否已经在AndroidStudio中添加了对JDK的全面支持?还是我应该只使用JDK1.7?建议将不胜感激。 最佳答案 您现在可以将java8与android一起使用在你的build.gradle文件中添加这一行compileOptions{sourceCompatibilityJavaVersion.VERSION_1_8targetCompatibilityJavaV
还有其他几个SO问题谈论泛型编译OKw/Eclipse的编译器而不是javac(即Java:GenericshandleddifferenltyinEclipseandjavac和GenericscompilesandrunsinEclipse,butdoesn'tcompileinjavac)——但这看起来有点不同。我有一个enum类:publicclassLogEvent{publicenumType{//...valueshere...}...}我有另一个类,它的方法接收从Enum继承的任意类型的对象:@Overridepublic>voidpostEvent(Contextco
Note:Thisisaspin-offfromComparableandComparatorcontractwithregardstonull这段代码在Eclipse中编译运行良好(20090920-1017)importjava.util.*;publicclassSortNull{static>ComparatornullComparableComparator(){returnnewComparator(){@Overridepublicintcompare(Tel1,Tel2){returnel1==null?-1:el2==null?+1:el1.compareTo(el2
我已经看到了WhichJDK'sdistributionscanrun`javac-source1.6-target1.5`?中讨论的编译选项。.我了解源和目标的各个选项。我不明白为什么源版本高于目标版本。为旧目标编译代码是有意义的。但是在那种情况下,我们为什么不直接使用-source我们希望能够在其上运行的最旧目标 最佳答案 source:您的源代码编译所需的版本。目标:您想要支持的最旧的JRE版本。确保还设置bootclasspath以确保您的程序可以在较旧的VM上运行。来自javacdocumentation:Cross-Co
最近我开始使用Eclipse的java编译器,因为它比标准的javac快得多。有人告诉我它更快,因为它执行增量编译。但我仍然对此有点不确定,因为我找不到任何关于这两者的权威文档-eclispse和sun的-编译器“增量功能”。是不是Sun的编译器总是编译每个源文件,而Eclipse的编译器只编译已更改的文件以及受此类更改影响的文件?编辑:我没有使用Eclipse自动构建功能,而是在设置-Dbuild.compiler=org.eclipse.jdt.core.JDTCompilerAdapter对于我的ant构建。 最佳答案 Isi
我的理解是,Google不喜欢Oracle在JavaME中使用JRE的许可政策,所以它只是重写了它使用自己的JVM规范模仿JRE,但行为有点不同,尤其是当它出现时让事情变得更高效、更安全。所以,如果我的理解是正确的,那就意味着当javac在一些Java源代码上运行并编译成“二进制”字节码,兼容的JVM会解释不同于Dalvik的字节码(在某些情况下)。这是与生俱来的Dalvik和其他(兼容的)JVM之间的区别。如果我到目前为止所说的任何内容不正确,请先纠正我!现在,如果Android带有自己的编译器(它可能),并以不同的方式编译Java源代码(Dalvik兼容)方式比javac,然后我可